/* component/calendar/calendar.wxss */

.icon {
  background-image: url('');
  background-size: 100% auto;
  width: 32rpx;
  height: 32rpx;
}

.flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.swiper {
  transition: height 0.3s;
}

.header-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.calendar-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 32rpx;

  text {
    font-size: 38rpx;
    color: #000000;
    line-height: 44rpx;
  }

  .calendar-nav {
    display: flex;

    button {
      margin: 0 5px;
    }
  }
}

.today {
  width: 88rpx;
  height: 42rpx;
  background: #f3f4f4;
  border-radius: 22rpx;
  font-size: 24rpx;
  line-height: 42rpx;
  color: #868d8d;
  text-align: center;
  margin-right: 6rpx;
}

.today:active {
  background: #dfdfdf;
  color: #5f6464;
}

.direction-column {
  flex-direction: column;
}

.flex1 {
  flex: 1;
}

.flex-center {
  display: flex;
  justify-content: center;
  align-items: center;
}

.flex-start {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.flex-between {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.flex-end {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.flex-around {
  display: flex;
  justify-content: space-around;
  align-items: center;
}

.flex-wrap {
  flex-wrap: wrap;
}

.align-start {
  align-items: flex-start;
}

.align-end {
  align-items: flex-end;
}

.align-stretch {
  align-items: stretch;
}

.calendar {
  font-family: 'PingFang SC', -apple-system,
    BlinkMacSystemFont, Roboto, 'Helvetica Neue',
    Helvetica, Arial, 'Hiragino Sans GB',
    'Source Han Sans', 'Noto Sans CJK Sc',
    'Microsoft YaHei', 'Microsoft Jhenghei',
    sans-serif;
  z-index: 9999;
}

.calendar .title {
  padding: 10rpx 16rpx 10rpx 20rpx;
  line-height: 60rpx;
  font-size: 32rpx;
  font-weight: 600;
  color: #1c2525;
  letter-spacing: 1px;
}

.calendar .title .year-month {
  margin-right: 20rpx;
}

.calendar .title .icon {
  padding: 0 16rpx;
  font-size: 32rpx;
  color: #999;
}

.calendar .title .open {
  background-color: #f6f6f6;
  color: #999;
  font-size: 22rpx;
  line-height: 36rpx;
  border-radius: 18rpx;
  padding: 0 14rpx;
}

.list-open {
  position: relative;
  justify-content: center;
}

.list-open .icon::after {
  content: '';
  position: absolute;
  top: 16rpx;
  right: 60rpx;
  display: block;
  width: 278rpx;
  height: 0rpx;
  border-bottom: 2rpx solid
    rgba(214, 219, 219, 0.68);
}

.list-open .icon::before {
  content: '';
  position: absolute;
  top: 16rpx;
  left: 60rpx;
  display: block;
  width: 278rpx;
  height: 0rpx;
  border-bottom: 2rpx solid
    rgba(214, 219, 219, 0.68);
}

.fold {
  transform: rotate(0deg);
}

.unfold {
  transform: rotate(180deg);
}

.calendar .calendar-week {
  line-height: 40rpx;
  padding: 0 22rpx;
  font-size: 28rpx;
  color: #999;
}

.calendar .calendar-week .calendar-week-item {
  width: 100rpx;
  text-align: center;
}

.calendar .calendar-main {
  padding: 18rpx 22rpx 0rpx;
  transition: height 0.3s;
  align-content: flex-start;
  overflow: hidden;
}

.calendar .calendar-main .day {
  position: relative;
  width: 88rpx;
  color: #666;
  text-align: center;
  height: 82rpx;
}

.calendar .calendar-main .day .bg {
  height: 66rpx;
  line-height: 66rpx;
  font-size: 28rpx;
  color: #333;
}

.calendar .calendar-main .day .now {
  width: 66rpx;
  border-radius: 50%;
  text-align: center;
  /* color: #0EC0B8; */
  background: rgba(0, 0, 0, 0.2);
  margin: 0 auto;
}

.calendar .calendar-main .day .select {
  width: 64rpx;
  height: 64rpx;
  border-radius: 50%;
  text-align: center;
  color: #fff;
  background: #000000;
  margin: 0 auto;
}

.calendar .calendar-main .day .spot::after {
  position: absolute;
  content: '';
  display: block;
  width: 8rpx;
  height: 8rpx;
  bottom: 22rpx;
  background: #0ec0b8;
  border-radius: 50%;
  left: 0;
  right: 0;
  margin: auto;
}

.calendar .calendar-main .day .deep-spot::after {
  position: absolute;
  content: '';
  display: block;
  width: 8rpx;
  height: 8rpx;
  bottom: 22rpx;
  background: #ff7416;
  border-radius: 50%;
  left: 0;
  right: 0;
  margin: auto;
}

.calendar .calendar-main .day .other-month {
  color: #ccc;
  background: transparent;
}

.header-wrap .month {
  font-size: 28rpx;
  color: #929797;
}
